package cn.edu.ahstu.flink.java;

import org.apache.flink.api.common.RuntimeExecutionMode;
import org.apache.flink.streaming.api.datastream.DataStream;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;

import java.util.Arrays;

public class SourceDemo01 {
    /**
     * 主函数，用于演示DataStream的创建和处理
     * @param args 命令行参数
     * @throws Exception 如果发生错误，可能会抛出异常
     */
    public static void main(String[] args) throws Exception {
        // 初始化执行环境
        StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
        env.setRuntimeMode(RuntimeExecutionMode.AUTOMATIC);

        // 创建数据源
        // 使用fromElements方法创建DataStream
        DataStream<String> ds1 = env.fromElements("hadoop","spark","flink");

        // 使用fromCollection方法创建DataStream
        DataStream<String> ds2 = env.fromCollection(Arrays.asList("hadoop","spark","flink"));

        // 使用generateSequence方法创建DataStream
        //DataStream<Long> ds3 = env.generateSequence(1, 10);

        // 使用fromSequence方法创建DataStream
        DataStream<Long> ds4 = env.fromSequence(1, 10);

        // 数据转换操作（此处未具体实现）

        // 将处理结果打印到控制台
        ds1.print();
        ds2.print();
       // ds3.print();
        ds4.print();

        // 执行环境的执行方法，启动程序
        env.execute();
    }

}
